import { ProjectLedgerApi } from '@/api'
import CommonModel from './common'

// 养护工程 /养护工程管理 /工程台账管理
class ProjectLedgerModel extends CommonModel {
    constructor() {
        super()
        this.api = new ProjectLedgerApi()
    }

    // 获取不分页的合同列表，用于获取合同下拉框
    allList(data) {
        return this.api.allList(data)
    }

    // 获取所有已经锁定的项目
    getListByLock(data) {
        return this.api.getListByLock(data)
    }

    // 名称唯一性检查
    validNameUnique(data) {
        return this.api.validNameUnique(data)
    }
    // 清单子目编码唯一性检查
    validQuantitiesUnique(data) {
        return this.api.validQuantitiesUnique(data)
    }
    lock(data) {
        return this.api.lock(data)
    }

    chapterList() {
        return this.api.chapterList()
    }

    // 分类列表
    classifyList() {
        return this.api.classifyList()
    }

    quantitiesList(data) {
        return this.api.quantitiesList(data)
    }
    // 单位列表
    unitList(data) {
        return this.api.unitList(data)
    }
    // 子类新增
    childSaveOrUpdate(data) {
        return this.api.childSaveOrUpdate(data)
    }
    // 查询当前合同下的章次
    chapterListById(data) {
        return this.api.chapterListById(data)
    }
    // 当前合同新增章次
    chapterAdd(data) {
        return this.api.chapterAdd(data)
    }
    // 删除章次
    chapterDelete(data) {
        return this.api.chapterDelete(data)
    }
    // 已删除清单
    delList(data) {
        return this.api.delList(data)
    }
    // 导入
    import(data) {
        const form = new FormData()

        // 对象循环
        for (const key in data) {
            if (Object.hasOwnProperty.call(data, key)) {
                const value = data[key]
                form.append(key, value)
            }
        }
        return this.api.import(form)
    }
    // 子项删除
    deleteChild(data) {
        return this.api.deleteChild(data)
    }
    // 获取计日工和工程量汇总清单
    statisticsist(data) {
        return this.api.statisticsist(data)
    }

    // 复制合同
    copySave(data) {
        return this.api.copySave(data)
    }
    // 养护工程计量申请列表
    applicationList(data) {
        return this.api.applicationList(data)
    }
    // 养护工程计量申请基础信息保存
    applicationSave(data) {
        return this.api.applicationSave(data)
    }
    // 本期工程量列表分页查询
    currentPeriodPageList(data) {
        return this.api.currentPeriodPageList(data)
    }
    // 养护工程计量申请基础信息详情
    applicationDetail(data) {
        return this.api.applicationDetail(data)
    }
    // 养护工程计量申请提交审批
    applicationSubmit(data) {
        return this.api.applicationSubmit(data)
    }
    // 养护工程计量申请撤销
    applicationWithDraw(data) {
        return this.api.applicationWithDraw(data)
    }
    // 养护工程计量申请删除
    applicationDelete(data) {
        return this.api.applicationDelete(data)
    }
    // 养护工程计量申请审批通过
    applicationApprove(data) {
        return this.api.applicationApprove(data)
    }
    // 养护工程计量申请审批驳回
    applicationReject(data) {
        return this.api.applicationReject(data)
    }
    // 护工程计量申请工程量章次/计日工分类本期计量金额合计查询
    chapterTotalCount(data) {
        return this.api.chapterTotalCount(data)
    }
    // 养护工程计量申请本期工程量保存
    currentPeriodSave(data) {
        return this.api.currentPeriodSave(data)
    }
    // 确认清单计量汇总表
    billQuantitiesCollection(data) {
        return this.api.billQuantitiesCollection(data)
    }
    // 养护工程计量申请本期计量总金额校验
    checkTotalAmount(data) {
        return this.api.checkTotalAmount(data)
    }
}

export default ProjectLedgerModel
